/*
 * instead of having the tracing thread do the IOs also, let's place it
 * on a background thread. we'll write the data to an intermediate memory 
 * queue, from which this thread will pop items and write them to the fmaps.
 * if the queue is full, the tracing thread will have to block, but this is 
 * better than losing data or having latency surges in the traced code, when 
 * IOs are done.
 */


